Maven属性和使用 |
您所在的位置:网站首页 › pom project › Maven属性和使用 |
maven的属性可以理解为我们定义了一个变量,后面使用这个变量,如: 定义属性 zhangsan使用属性,其中${name}会被替换成zhangsan src/main/${name} maven属性在maven中,系统内置了一些公共属性,如${project.basedir}表示当前项目的路径,如我们新建了一个maven项目,pom文件所在的路径即是项目路径,这里是:C:\TempData\my-workspace\fast-group 当我们新建一个工程时,这个工程会内置一些属性,这里新建工程结构如下: C:\TempData\ericsson-workspace --test-maven --src --main/java --main/resources --target --classes --pom.xml对应上述工程结构如下, 内置属性描述对应项目映射${project.basedir}项目根目录,pom.xml文件所在的目录C:\TempData\ericsson-workspace\test-maven${project.build.directory}构建工作路径,默认为targetC:\TempData\ericsson-workspace\test-maven\target${project.build.outputDirectory}构建输出目录,默认为target\classesC:\TempData\ericsson-workspace\test-maven\target\classes${project.build.sourceDirectory}源代码所在目录,默认为src\main\javaC:\TempData\ericsson-workspace\test-maven\src\main\java项目结构扩展的属性,当我们新建一个maven项目pom文件时候,产生如下内容 4.0.0 com.ericsson test-maven 0.1 jar test-maven http://maven.apache.org其中xml根节点为project,那么将产生工程属性,如${project.artifactId}在这里将是项目名:test-maven,${project.version}为0.1,那么,当我们新建完一个工程后,我们将会有下面这些工程属性 内置属性描述对应项目${project.groupId}组织名称,一般是网址名称反着写,如www.google.com.cn,将写成cn.com.googlecom.ericsson${project.artifactId}项目名称,我们的项目名test-maven${project.version}版本号0.1${project.packaging}打包类型jar${project.build.finalName}项目打包输出文件的名称,默认为${project.artifactId}-${project.version}test-maven-0.1.jar这里只给出了一部分,其余的可根据pom文件结构自动推出,如${project.name}=test-maven 由于maven安装以后,有全局配置settings.xml文件,在maven的安装目录下, 其中也会有配置文件 如${settings.localRepository},这里对应我配置的C:\TempData\maven-workspace,由于大家配置的不一致,这里不做详解 工程自定义属性可以自定义变量,也可以修改工程已有的变量,在properties属性节点下添加,如下所示 UTF-8 UTF-8 UTF-8 ${project.version} 4.3.18.RELEASE 9.4.8.v20171121 2.26 root 123456 zhangsan yyyyMMdd-HHmm profiles分组属性,-P我们构建maven项目的时候,根据传入id表示,可以取对应表示id下的环境变量,如mvn install -P dev,那么${jdbc.username}的值将为it dev dev it true release release root beta beta admin 传入参数属性,-D如我们不要test阶段,我们可以使用参数控制clean package -Dmaven.test.skip=true 我们可以像运行java程序一样,通过参数形式传递属性,如mvn install -P dev -Dhaha=1234,这里配置对应的haha参数 环境变量是根据系统环境来取的,这里我们可以通过命令行mvn help:system查看所有的属性 系统属性 环境属性 我们定义的属性可以在xml文件或者properties文件中使用 在xml中使用如下,任意位置替换 properties文件中使用 新增一个jdbc.properties文件,文件内容如下 jdbc.username=${jdbc.username}定一个属性 dev dev it true release release root beta beta admin配置一个resource文件的包含,配置属性filtering置为true,将替换classes下面的文件 src/main/resources true **/*.properties执行命令:mvn clean install -P release,查看classes下面的文件 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |